<?php
/**
 * Created by PhpStorm.
 * User: 雨寒
 * Date: 2018/8/17
 * Time: 上午9:05
 */
namespace app\common\model;

use think\Cache;
use think\Db;

class Member extends Common
{
	/**
	 * 搜索用户
	 * 根据提供的搜索条件，搜索手机号、UID、昵称满足条件的用户（无法搜索自己）
	 *
	 * @param array $user 当前用户
	 * @param string $condition 搜索条件
	 * @return array|false|\PDOStatement|string|\think\Collection
	 */
	static public function search($user, $condition)
	{
		//缓存条件
		Cache::set("sql_condition", $condition);
		//搜索到的用户列表
		$list = Db::name("user")
			->where("is_valid", 1)
			->where("id", "NEQ", $user["id"])
			->where(function ($query){
				//获取搜索条件
				$condition = Cache::pull("sql_condition");

				//构造SQL语句
				$query->where("nickname", "LIKE", "%$condition%")
					->whereOr("mobile", $condition)
					->whereOr("uid", $condition);
			})
			->order("create_time DESC")
			->field("uid,mobile,nickname,avatar,create_time,parent_id")
			->select();

		//处理无头像用户信息
		foreach ($list as &$item)
		{
			//判断是否有头像
			if (empty($item["avatar"]) || !check_url($item["avatar"]))
			{
				$item["avatar"] = request()->domain() . "/static/images/default_icon.png";
			}

			//判断上级是否为当前用户
			if ($item["parent_id"] == $user["id"])
			{
				$item["is_child"] = 1;
			}
			//是否无上级
			elseif (empty($item["parent_id"]))
			{
				$item["is_child"] = 0;
			}
			else
			{
				$item["is_child"] = -1;
			}
			//去除上级字段
			unset($item["parent_id"]);
		}

		return empty($list) ? array() : $list;
	}


}